﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

namespace LibreriaDeClases
{
    class Factura
    {
        private Int32 nroFactura;
        private DateTime fecha;
        private Boolean pagado;    
        private Double total;   
        private Cliente cliente;
       
        //misma estrategia que en el DetalleReparacion
        //como estos 2 atributos de abajo son mutuamente excluyentes
        //deberiamos usar uno solo tipo Object y hacer polimorfismo
        private Reparacion reparacion;
        private VentaInsumo venta;

        public Int32 NroFactura
        {
            get { return nroFactura; }
            set { nroFactura = value; }
        }

        public DateTime Fecha
        {
            get { return fecha; }
            set { fecha = value; }
        }
        public Boolean Pagado
        {
            get { return pagado; }
            set { pagado = value; }
        }
        public Double Total
        {
            get { return total; }
            set { total = value; }
        }
        public Cliente Cliente
        {
            get { return cliente; }
            set { cliente = value; }
        }

        public Factura()
        {
        }
        public Factura(Int32 nro, DateTime fec, Boolean pag, Double tot, ref Cliente cli, ref Reparacion rep, ref VentaInsumo ven)
        {
            //modificar para usar polimorfismo
            nroFactura = nro;
            fecha = fec;
            pagado = pag;
            total = tot;
            cliente = cli;
            reparacion = rep;
            venta = ven;
        }

    }

}
